Lobzik Report

Core candidates

These classes are too widely used to be part of the feature module. It is recommended to put them into core modules.

Class outliers rated by Authority
Class InDegree OutDegree Authority Hub
MessageRecipient 32 0 0.1226538 0.0
SendPreferencesFactory 2 18 0.0035847223 0.048336603
PackageFactory 1 17 0.002940621 0.026412828
IDList 21 0 0.056432072 0.0
ComposeMessageActivity 1 55 0.0014672722 0.13558623
PostInboxJob 3 11 5.5924326E-4 0.12896445
PostTrashJobV2 1 11 1.7363836E-4 0.12896445
MoveToFolderJob 3 11 5.5924326E-4 0.12932573
Status 25 0 0.09625677 0.0
MessageActionSheetViewModel 1 19 0.0020502273 0.06219481
MessageRepository 21 38 0.050476115 0.21138194
ConversationsRepositoryImpl 0 43 0.0 0.18353474
ConversationsRepository 17 9 0.059797056 0.057219535
Conversation 12 3 0.06860013 0.0046245656
MoveMessagesToFolder 9 2 0.057864856 0.0075246217
MailboxViewModel 4 47 0.022013282 0.1939723
MailboxActivity 0 65 0.0 0.23688397
ConversationModeEnabled 6 2 0.05887984 0.034197208
MailboxItemUiModelMapper 1 15 0.013235932 0.1326955
ContactDetailsViewModelOld 1 13 0.0050374363 0.11683487
EditContactDetailsRepository 2 12 0.005807483 0.10143304
ContactDetailsRepository 6 9 0.024950352 0.11673986
ContactLabelUiModel 8 3 0.06724436 0.05604452
ContactGroupEditCreateRepository 1 16 0.008422242 0.12774307
ContactGroupEditCreateViewModel 2 12 0.003209626 0.12342777
ContactGroupsRepository 2 8 0.008331058 0.12656444
ContactsListFragment 2 20 7.9302903E-4 0.030749166
ComposeMessageRepository 2 26 0.019872658 0.19671094
ComposeMessageViewModel 2 46 0.009515666 0.17476334
GroupRecipientsViewModel 1 9 0.0029206595 0.116470024
SendMessageWorker 2 19 0.002629123 0.04309474
LabelRepositoryImpl 0 17 0.0 0.127233
LabelEntityDomainMapper 7 4 0.059216533 0.08177545
LabelEntityApiMapper 7 4 0.059216533 0.064133845
LabelEntity 12 2 0.077907495 0.053734332
LabelApiModel 12 1 0.07449711 0.019696353
PostLabelWorker 1 10 0.008681896 0.12058855
LabelRepository 41 4 0.3048289 0.080036044
Label 44 2 0.33303446 0.053734332
LabelType 45 0 0.28864962 0.0
LabelId 90 0 0.49882588 0.0
UpdateMessageLabels 1 6 0.0059432625 0.104784325
LabelsActionSheetViewModel 1 18 0.0019245021 0.08709838
NavigationActivity 2 18 0.016240042 0.038213532
MessageDetailsActivity 8 32 0.031555507 0.1327495
Event 25 0 0.14809117 0.0
TextExtensions 28 0 0.07112019 0.0
UserIdTag 17 0 0.0563679 0.0
DatabaseProvider 21 13 0.10691436 0.036256246
MessagesService 2 16 3.6832012E-4 0.110965386
EventHandler 1 44 5.388084E-4 0.24468577
MessageDetailsViewModel 2 52 0.011108548 0.26841885
MessageDetailsRepository 36 15 0.18574831 0.13348128
MessageDetailsAdapter 1 26 0.009058321 0.05626521
IntentExtrasData 10 6 0.06581712 0.03211366
PendingActionDao 13 2 0.06862158 0.008035378
PendingSend 11 0 0.07224532 0.0
ConvertLocalContactsJob 1 28 1.2540481E-4 0.12212638
ContactsRepository 9 6 0.08657048 0.10873607
ContactDao 21 4 0.10813137 0.032913163
MessageDao 12 2 0.07571753 0.0070846668
CounterDao 14 2 0.0581265 0.0038722344
ContactEmail 44 1 0.24178971 0.0
MessageSender 25 0 0.1150563 0.0
Attachment 31 3 0.09727178 0.009051708
ContactData 11 0 0.057341363 0.0
FullContactDetails 17 5 0.06055681 0.02143534

Monolith modules

modularity score: 0.6840552453624877
Module Conductance Cut MonolithCut MonolithClasses NonMonolithClasses
response-conversations-action 0.0 0.0 0.0 2 0
organization-keys-api 0.0 0.0 0.0 6 0
bridge-mapper-legacy 0.00404040404040404 2.0 2.0 15 0
onboarding-new-existing 0.02097902097902098 3.0 3.0 11 0
ringtone-image-error 0.021052631578947368 2.0 2.0 14 0
snooze-quick-dialog 0.0273972602739726 2.0 2.0 7 0
theme-settings-prevent 0.03605015673981191 23.0 23.0 23 0
pin-lock-start 0.039301310043668124 18.0 18.0 25 0
settings-clickable-pin 0.056 7.0 7.0 5 0
label-labels-parent 0.08335641096649128 301.0 301.0 77 0
sentry-network-proxy 0.08587257617728532 31.0 31.0 23 0
notification-push-receiver 0.10692771084337349 71.0 71.0 30 0
device-navigation-account 0.12578616352201258 160.0 160.0 39 0
contacts-contact-progress 0.15782122905027932 339.0 339.0 72 0
attachment-full-contact 0.1601775956284153 469.0 469.0 84 0
retrofit-proton-ok 0.21027479091995221 176.0 176.0 35 0
message-html-transformer 0.2335612835349816 888.0 888.0 70 0
correspondent-context-conversations 0.2379058979456594 718.0 718.0 85 0
counter-job-post 0.26460859977949286 240.0 240.0 42 0
contact-details-fetch 0.3013392857142857 135.0 135.0 10 0
message-embedded-dark 0.3314917127071823 900.0 900.0 67 0
fetch-report-message 0.34235229155162894 620.0 620.0 50 0
swipe-mailbox-feature 0.34846625766871164 1136.0 1136.0 89 0
contact-local-create 0.3685202639019793 391.0 391.0 20 0
Modules sorted by conductance

Modules identified with Lobzik

List of modules identified with Lobzik, sorted from best to worst, according to the metrics

response-conversations-action

Conductance score: 0.0

ConversationsActionResponses Response ConversationsActionResponse
Classes of this module

currently found in :app module:

To extract this module you don't need to break any dependencies in :app

organization-keys-api

Conductance score: 0.0

OrganizationEvent SecuredServices Organization OrganizationKeysResponse OrganizationResponse OrganizationApiSpec OrganizationApi OrganizationService
Classes of this module

currently found in :app module:

To extract this module you don't need to break any dependencies in :app

bridge-mapper-legacy

Conductance score: 0.00404040404040404

Keys Address ComposeMessageActivity EventResponse ComposeMessageViewModel BridgeMapper UserKeyBridgeMapper UserBridgeMapper AddressKeyBridgeMapper AddressesBridgeMapper AddressBridgeMapper UserKeysBridgeMapper AddressKeysBridgeMapper StringExtensionsKt MessageDetailsRepository IntentExtrasData UserManagerKt CoreAccountManagerMigration CoreAccountManagerMigrationKt LoadUser LoadLegacyUser LoadLegacyUserDelegate
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

onboarding-new-existing

Conductance score: 0.02097902097902098

DefaultSharedPreferences ViewExtensionsKt NewUserOnboardingActivity NewUserOnboardingViewModel OnboardingActivity OnboardingAdapter OnboardingItemUiModelDiffCallback OnboardingIndicatorsView OnboardingViewHolder OnboardingItemUiModel OnboardingViewModel ExistingUserOnboardingViewModel ExistingUserOnboardingActivity
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

ringtone-image-error

Conductance score: 0.021052631578947368

EditContactDetailsActivity ComposeMessageActivity MessageRecipientView NotificationSettingsActivity SecurityManager MailboxActivity ContactDetailsViewModelOld LabelsManagerActivity NavigationActivity IntentExtensionsKt TextExtensions CommonExtensionsKt TimeChangedReceiver ImageNotFoundError ErrorStateGeneratorsKt BadImageUrlException InvalidRingtoneException NoDefaultRingtoneError ImageNotFoundException InvalidRingtoneError NoDefaultRingtoneException BadImageUrlError NotificationSettingsViewModel RingtoneSettingsUiModel RecipientContextMenuFactory FetchPublicKeys
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

snooze-quick-dialog

Conductance score: 0.0273972602739726

QuickSnoozeOptionAdapter QuickSnoozeDialogFragment AbstractDialogFragment CustomQuickSnoozeDialog SnoozeRepeatDayView SnoozeNotificationsActivity SnoozeExtensionsKt SnoozeSettings ProcessPushNotificationDataWorker
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

theme-settings-prevent

Conductance score: 0.03605015673981191

PackageType MailSettingsResponse SendPreferencesFactory ComposeMessageActivity SettingsChangedEvent FetchLabelsEvent EventResponse SecureSharedPreferences SharedPreferencesAccountSettingsRepository SharedPreferencesDeviceSettingsRepository AccountSettingsRepository AppThemeSettings DeviceSettingsRepository ApplyAppThemeFromSettings GetAppThemeSettings SaveAppThemeSettings SettingsEnum ThemeChooserViewModel ThemeChooserActivity DefaultAddressActivity AccountSettingsActivity DisplayNameAndSignatureFragment EditSettingsItemActivity SettingsItem SettingsActivity DefaultSharedPreferences ObserveIsPreventTakingScreenshots SavePreventTakingScreenshots GetIsPreventTakingScreenshots SecurityManager MailboxActivity SendMessageWorker MessageDetailsActivity TextExtensions SettingsAdapter NetworkConfigurator MailSettings EventHandler MessageDetailsViewModel MessageDetailsAdapter UserAddressManagerKt ProtonMailBaseJob UpdateSettingsJob PmWebViewClient FetchMailSettings
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

pin-lock-start

Conductance score: 0.039301310043668124

AddAttachmentsActivity CreatePinActivity PinFragmentViewModel PinFragmentViewModelFactory ChangePinActivity ValidatePinActivity PinFragment PinAction GetPinLockTimer IsPinLockEnabled ShouldShowPinLockScreen PinLockManager BackupSharedPreferences DefaultSharedPreferences ObserveIsPreventTakingScreenshots SecurityManager SecurityManagerInitializer LogoutHandler ScreenshotManager SetMessagePasswordActivity NavigationActivity EmptyActivityLifecycleCallbacks TextExtensions CommonExtensionsKt AccountStateManager SecureEditText ISecurePINListener RoundButton BiggerDotPasswordTransformationMethod GetElapsedRealTimeMillis StartOnboardingObserver StartOnboardingObserverInitializer AddStartOnboardingObserverIfNeeded
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

settings-clickable-pin

Conductance score: 0.056

ClickableAdapter PinSettingsActivity SettingsEnum AccountSettingsActivity TextExtensions SettingsAdapter SettingsItemUiModel SettingsDefaultItemView
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

label-labels-parent

Conductance score: 0.08335641096649128

BuildConfig MessageSendResponse ContactEmailsResponseV2 QuickSnoozeDialogFragment AbstractDialogFragment FetchMessageDetailJob PostInboxJob PostTrashJobV2 MoveToFolderJob MessageActionSheetViewModel MessageActionSheet MessageActionSheetAction ActionSheetTarget ActionSheetHeader MoreItemsLinearLayout LabelChipUiModel SingleLineLabelChipGroupView MultiLineLabelChipGroupView CollapsedMessageLabelView SingleLineCollapsedLabelGroupView LabelChipView DrawerAdapter DrawerLabelItemUiModelMapper DrawerLabelUiModelMapper DrawerFoldersAndLabelsSectionUiModelMapper DrawerLabelUiModel DrawerItemUiModel MessageRepository JobEntryPoint NetworkConnectivityManager ConversationsRepositoryImpl ConversationApi ConversationsRepository MoveConversationsToFolder Conversation GetAllMessagesParameters GetAllConversationsParameters GetAllMessagesParametersKt LabelContext GetAllConversationsParametersKt ConversationsActionResult MoveMessagesToFolder ObserveConversationModeEnabled MailboxViewModel MailboxActivity UnreadChip ConversationModeEnabled MailboxItemUiModelMapper MailboxItemUiModel ContactEmailGroupSelectionState ContactDetailsViewModelOld EditContactDetailsViewModel EditContactDetailsRepository ContactDetailsRepository FetchContactGroups FetchContactGroupsResult ContactDetailsMapper ContactDetailsUiItem ContactLabelUiModel ContactGroupDetailsViewModel ContactGroupDetailsRepository ContactGroupEditCreateRepository ContactGroupEditCreateActivity ContactGroupEditCreateViewModel ColorChooserFragment ContactGroupsViewModel ContactGroupsRepository SetMembersForContactGroupJob ContactsListMapper ComposeMessageRepository ComposeMessageViewModel GroupRecipientsViewModel LabelRepositoryImpl LabelEventApiMapper LabelEntityDomainMapper LabelOrFolderWithChildrenMapper LabelRequestMapper LabelEntityApiMapper LabelDao LabelEntity LabelApi LabelApiSpec LabelsResponse LabelResponse LabelApiModel LabelRequestBody RemoveMessageLabelWorker RemoveMembersFromContactGroupWorker ApplyMessageLabelWorker UpdateConversationsLabelsWorker DeleteLabelsWorker PostLabelWorker LabelService LabelRepository Label ManageLabelActionResult LabelType LabelOrFolderWithChildren LabelId DeleteLabels ObserveFoldersEligibleAsParent UpdateConversationsLabels UpdateMessageLabels ObserveLabelsAndFoldersWithChildren GetLabelsByType ObserveLabelsOrFoldersWithChildrenByType ObserveLabels LabelsActionSheetViewModel LabelsManagerViewModel ParentFolderPickerViewModel LabelEditor LabelsManagerViewModelKt ParentFolderPickerViewModelKt LabelsActionSheet LabelsManagerActivity ParentFolderPickerActivity LabelsManagerAdapter ParentFolderPickerActivityKt LabelsActionAdapter LabelsManagerItemUiModelMapper LabelChipUiModelMapper LabelDomainActionItemUiMapper ParentFolderPickerItemUiModelMapper ParentFolderPickerState ParentFolderPickerAction LabelActonItemUiModel LabelsManagerItemUiModel ParentFolderPickerItemUiModel LabelIcon LabelActionItemUiModelDiffCallback StandardFolderLocation NavigationActivity MessageDetailsActivity SwitchUserAndOpenMessageDetailsActivity ConversationUiModel CollapsedMessageViews ViewExtensionsKt TextExtensions CommonExtensionsKt LabelColorsAdapter SecuredServices MessagesResponse MessageFactory MessageResponse MessageLocationResolver LabelContactsBody DatabaseProvider MessagesService ContactService ContactApi ContactEmailsManager ContactApiSpec MessageApi MessageApiSpec EventHandler MessageDetailsViewModel MessageDetailsRepository MessageDetailsAdapter ConvertLocalContactsJob ProtonMailBaseJob SearchMessagesJob CreateContactGroupWorker EmptyFolderRemoteWorker FetchContactsEmailsWorker FeatureFlagsManager ContactsRepository AppDatabase ProtonMailConverters ContactDao ContactDatabase ContactEmail MessageDatabase MailboxItemView MessageDetailsHeaderView EmptyFolder OnboardingIndicatorsView
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

sentry-network-proxy

Conductance score: 0.08587257617728532

EditContactDetailsActivity ComposeMessageActivity ConnectivityBaseViewModel EditSettingsItemActivity MessageRepository DohProviders AppCoroutineScope DefaultSharedPreferences NetworkConnectivityManager ConversationsRepositoryImpl MailboxViewModel MailboxActivity ContactsActivity EditContactDetailsViewModel ContactsViewModel ComposeMessageViewModel LabelRepositoryImpl MessageDetailsActivity INetworkConfiguratorCallback DnsOverHttpsProviderRFC8484 SwitchToMainBackendIfOnProxy SecuredServices NetworkConfigurator SwitchToMainBackendIfAvailable Json ProxyList Proxies ProxyItem SwitchToMainBackendIfAvailableKt OkHttpProvider ProtonMailApiProvider NetworkSwitcher DnsOverHttpsRetrofitApi EventManager EventService MessageDetailsViewModel PingWorker SentryUserObserver SentryVpnBeforeSendHook SentryProxyObserver SentryInitializer SentryInitialisationCoroutineScope AttachmentsViewModel ProtonStore VerifyConnection CreateContact
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

notification-push-receiver

Conductance score: 0.10692771084337349

OpenPGP TextDecryptionResult OnBootReceiver ConnectivityBroadcastReceiver AlarmReceiver EventUpdaterService ComposeMessageActivity UserCrypto MessageRepository MoveMessagesToFolder MailboxViewModel MailboxActivity ConversationModeEnabled LabelDao LabelEntity NavigationActivity SwitchUserAndOpenMessageDetailsActivity AndroidUserNotifier UserNotifier IntentExtensionsKt TextExtensions CommonExtensionsKt ColorExtensionsKt NotificationReceiver ApiException SnoozeSettings ConnectivityService FetchEventsAndReschedule EventManager FetchUpdatesJob AppDatabaseMigrations AppDatabase ProtonMailConverters ListItemThumbnail NotificationRepositoryImpl NotificationEntityDomainMapper NotificationApiEntityMapper NotificationDao NotificationDatabase NotificationEntity PushNotification NotificationAction PushNotificationSender PushNotificationData PMFirebaseMessagingService ProcessPushNotificationDataWorker NotificationType NotificationId Notification NotificationRepository NotificationServer NotificationServerKt ClearNotification ClearNotificationsForUser
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

device-navigation-account

Conductance score: 0.12578616352201258

BuildConfig Address AlarmReceiver ComposeMessageActivity SecureSharedPreferences ChangePinActivity ValidatePinActivity SharedPreferencesAccountSettingsRepository SharedPreferencesDeviceSettingsRepository AccountSettingsRepository EditSettingsItemActivity DrawerAdapter ProtonSideDrawer DrawerLabelItemUiModelMapper DrawerLabelUiModelMapper DrawerFoldersAndLabelsSectionUiModelMapper DrawerLabelUiModel DrawerItemUiModel DrawerFoldersAndLabelsSectionUiModel MessageRepository PinLockManager AppProcessLifecycleOwner DefaultSharedPreferences LogoutHandler UnreadCounter ObserveShowMovedEnabled ObserveMessageCountByLocation MailboxActivity ComposeMessageRepository ComposeMessageViewModel LabelType LabelId NavigationActivity SideMenuDynamicLocationData NavigationViewModel NavigationViewAction NavigationViewState TemporaryMessage NavigationActivityKt MessageDetailsActivity SwitchUserAndOpenMessageDetailsActivity BuildInfo ViewExtensionsKt StringExtensionsKt CommonExtensionsKt AccountManager UserIdTag SwitchToMainBackendIfOnProxy SecuredServices ProtonMailApiClient NetworkConfigurator TokenManager ProtonHeaders RegisterDeviceRequestBody DatabaseProvider UnregisterDeviceRequestBody DeviceService DeviceApiSpec DeviceApi EventHandler EventManager FetchUpdatesJob StartContacts StartSettings AccountManagerKt AccountStateManager CoreAccountManagerMigration CoreAccountManagerMigrationKt ForceUpgradeEvent SentryProxyObserver DatabaseFactory ClearUserData LoadLegacyUser IsAppInDarkMode FetchMailSettings LaunchInitialDataFetch FcmTokenManager UnregisterDeviceWorker RegisterDeviceWorker MultiUserFcmTokenManager PMFirebaseMessagingService FirebaseToken ProcessPushNotificationDataWorker NotificationServer NewUserOnboardingViewModel StartOnboardingObserver AddStartOnboardingObserverIfNeeded ExistingUserOnboardingViewModel
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

contacts-contact-progress

Conductance score: 0.15782122905027932

EditContactDetailsActivity RecipientDropDownClickListener KeyInformation PermissionHelper MessageRecipient AllCurrencyPlans ContactEmailsResponseV2 SendPreferencesFactory AvailablePlansResponse Plan AddAttachmentsActivity ComposeMessageActivity ProtonMailEndlessJob GetSendPreferenceJob ResignContactJob OrganizationEvent DownloadedAttachmentEvent VerifyPaymentEvent SendPreferencesEvent DownloadEmbeddedImagesEvent AvailablePlansEvent ContactProgressEvent FetchLabelsEvent ContactEvent Status MessageRecipientView EventResponse ConnectivityBaseViewModel MessageActionSheetViewModel PinSettingsActivity CreatePinActivity ChangePinActivity ValidatePinActivity SwipeChooserActivity DefaultAddressActivity DisplayNameAndSignatureFragment AttachmentStorageActivity EditSettingsItemActivity NotificationSettingsActivity SettingsActivity MessageRepository ConversationsRepository MoveMessagesToFolder MailboxViewModel MailboxActivity MailboxItemUiModelMapper IContactsFragment PostResult ContactsActivity ViewPagerOnPageSelected IContactsListFragmentListener ContactDetailsViewModelOld EditContactDetailsViewModel EditContactDetailsRepository ContactDetailsRepository FetchContactGroups ContactDetailsViewModel ContactDetailsActivity ContactLabelUiModel UnsavedChangesDialog AndroidContactDetailsRepository AndroidContactDetailsCallbacks AndroidContactDetailsCallbacksFactory AndroidContactsLoaderCallbacksFactory AndroidContactsLoaderCallbacks AndroidContactsRepository ContactGroupEmailsAdapter ContactGroupDetailsViewModel ContactGroupDetailsActivity ContactGroupEmailViewHolder ContactGroupDetailsRepository ContactGroupEditCreateRepository ContactGroupEditCreateActivity ContactGroupEditCreateViewModel AddressChooserActivity AddressChooserRepository AddressChooserViewModel ColorChooserFragment AddressChooserViewModelFactory ContactGroupMode ContactGroupEditCreateViewModelFactory GroupsItemAdapterMode ContactsFragmentsPagerAdapter ContactGroupsFragment ContactGroupsViewModel ContactsGroupsListAdapter ContactGroupsRepository ContactGroupListItem ContactsViewModel ContactsListFragment ContactsListViewModel ContactsListMapper IContactsListViewModel UploadProgressObserver ProgressLiveData ProgressDialogFactory IProgressDialogFactory ProgressState ISearchListenerViewModel SearchExpandListener SearchViewQueryListener OnSearchClose ContactItem ContactsListAdapter ContactItemListFactory LocalContactsConverter ContactsActivityContract ComposeMessageRepository ComposeMessageViewModel GroupRecipientsDialogFragment GroupRecipientsViewModel LabelResponse LabelApiModel LabelRepository Label LabelType LabelId DeleteLabels LabelsActionSheetViewModel LabelsManagerViewModel LabelsManagerActivity MessageDetailsActivity RecyclerViewEmptyViewSupport Event AndroidUserNotifier INetworkConfiguratorCallback TextExtensions ColorExtensionsKt NotificationReceiver NetworkConfigurator DatabaseProvider OrganizationResponse ThreadSchedulers MessagesService EventHandler MessageDetailsViewModel IntentExtrasData MessagePrinter RecipientContextMenuFactory StartCompose ConvertLocalContactsJob GetOrganizationJob ReportPhishingJob ProtonMailBaseJob DeleteContactWorker CreateContactWorker MailboxLoadedEvent PostPhishingReportEvent HandleSingleAttachment HandleEmbeddedImageAttachments ContactsRepository ContactDao ContactDatabase ContactEmail ContactData ContactEmailConverter ServerFullContactDetails FullContactDetails LocalContactAddress LocalContact ListItemThumbnail VerifyConnection FetchContactsData FetchVerificationKeys FetchVerificationKeysResult CreateContact NotificationServer
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

attachment-full-contact

Conductance score: 0.1601775956284153

EditContactDetailsActivity AbstractDecryptionResult OpenPGP TextDecryptionResult BinaryDecryptionResult EOToken KeyInformation HTMLToMDConverter ConstantTime Logger MIMEParser MIMEBuilder MIMEPart SRPClient ServerTime PermissionHelper MessageRecipient AttachmentUploadResponse MessageSendResponse MessageSendKey MessageSendPackage MessageSendAddressBody MessageSendBody PackageType MIMEType KeyFlag ContactEncryption PublicKeyResponse DeleteResponse ContactEncryptedData ContactsDataResponse Auth ContactResponse PublicKeyBody SendPreference ContactEmailsResponseV2 SendPreferencesFactory PackageFactory SignedKeyList KeyActivationBody CreateContact CreateContactBody PasswordVerifier IDList CreateContactV2BodyItem AddAttachmentsActivity ComposeMessageActivity ProtonMailEndlessJob GetSendPreferenceJob ResignContactJob DownloadedAttachmentEvent ResignContactEvent SendPreferencesEvent ContactEvent Status PostImportAttachmentFailureEvent PostImportAttachmentEvent AttachmentHeaders MessageRecipientView EventResponse SecureSharedPreferences GetMailSettings AddressCrypto UserCrypto CipherText Crypto AuthRepositoryKt PinLockManager EditContactDetailsViewModel EditContactDetailsRepository ContactDetailsRepository FetchContactDetails FetchContactsMapper FetchContactDetailsResult ContactsListFragment UpdateContactWorker ComposeMessageRepository ComposeMessageViewModel SendMessageWorker SendMessage HtmlToSpanned SendPreferencesToMessageEncryptionUiModelMapper UserBridgeMapper LabelRepository LabelId MessageBodyDecryptor MessageDetailsActivity LoadTheLastNonDraftMessageBody MessageBodyLoader MessageEncryptionUiModel MimeDecryptor TextVerificationResult TextExtensions StringExtensionsKt AttachmentClearingServiceHelper AttachmentListAdapter AccountManager SecuredServices ServerAttachment IAttachmentFactory MessagesResponse MessageFactory MessageResponse ServerMessage AttachmentFactory MailSettings LabelContactsBody DatabaseProvider MessageSecurityOptions ContactService ContactApi ContactApiSpec AttachmentApi AttachmentUploadService AttachmentService AttachmentDownloadService AttachmentApiSpec KeyApi KeyApiSpec KeyService EventHandler ProtonRetrofit MessageDetailsViewModel MessageDetailsRepository MessageDetailsAdapter IntentExtrasData MessagePrinter MessageDetailsAttachmentListAdapter ExtractFullContactDetailsTask StartCompose MessageBuilderData PendingActionDao PendingUpload ConvertLocalContactsJob EmbeddedImage CreateContactWorker DeleteAttachmentWorker CreateDraftWorker SentryTree AttachmentsRepository AttachmentsViewState HandleSingleAttachment UploadAttachmentsWorker AttachmentsViewModel HandleEmbeddedImageAttachments Armorer AttachmentsHelper DownloadEmbeddedAttachmentsWorker ImportAttachmentsWorker OpenPgpArmorer ExtractAttachmentByteArray ContactsRepository ContactDao MessageDao AttachmentMetadataDao ContactDatabase ContactEmail AttachmentTypesConverter Attachment FullContactDetailsFactory LocalAttachment ContactData FullContactDetailsResponse FullContactDetailsConverter ServerFullContactDetails FullContactDetails MessageDatabase AttachmentDetailView SaveDraft FetchPublicKeys FetchVerificationKeys FetchVerificationKeysResult ProcessPushNotificationDataWorker
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

retrofit-proton-ok

Conductance score: 0.21027479091995221

ServerTime StringConverterFactory MessageRecipient MessageSendResponse MessageSendPackage MessageSendBody SendPreference SendPreferencesFactory PackageFactory AttachmentHeaders AddressCrypto CipherText ConfigurableProtonRetrofitBuilder DetailedException DetailedExceptionKt MailboxActivity ComposeMessageViewModel SendMessageWorker SendMessageWorkerError SendMessage LabelRepository MessageFlagsToEncryptionMapper TryWithExponentialBackoff ServerTimeInterceptor AndroidUserNotifier UserNotifier UuidProvider TryWithRetry ExceptionExtensionsKt DurationExtensionsKt ProtonRetrofitBuilder UserIdTag RetryRequestInterceptor ProtonMailRequestInterceptor ProtonRetrofitAttachments MessageSenderFactory IAttachmentFactory MessageFactory ServerMessage MessageLocationResolver AttachmentFactory MailSettings DatabaseProvider MessageSecurityOptions DefaultOkHttpClient ProtonRetrofitExtended ProxyOkHttpClient OkHttpProvider ProtonMailApiProvider ProtonRetrofitSecure NetworkSwitcher RetrofitType ProtonOkHttpClient ProtonRetrofitPing ProtonRetrofitPublic MessagesService MessageApi MessageApiSpec MessageSendService EventHandler ProtonRetrofit MessageDetailsRepository PendingActionDatabase PendingSendRepositoryImpl PendingActionDao PendingSend PendingUpload CleanUpPendingSendWorker SchedulePendingSendCleanUpWhenOnline PendingSendRepository WorkerRepository CreateDraftWorker UploadAttachmentsWorker DeleteMessage ClearUserData SaveDraft SaveDraftResult
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

message-html-transformer

Conductance score: 0.2335612835349816

HtmlProcessor XHtmlHandler HtmlDivHandler IMessageHtmlHandler Html5Handler BigContentHolder RecipientDropDownClickListener TextDecryptionResult Logger MIMEPart Transformer AbstractTransformer ServerTime PermissionHelper MessageRecipient PublicKeyResponse PublicKeyBody SendPreference SendPreferencesFactory PackageFactory Address AlarmReceiver AddAttachmentsActivity ComposeMessageActivity FetchMessageDetailJob GetSendPreferenceJob ResignContactJob FetchDraftDetailJob PostReadJob FetchDraftDetailEvent ResignContactEvent SendPreferencesEvent DownloadEmbeddedImagesEvent Status FetchMessageDetailEvent PostImportAttachmentFailureEvent PostImportAttachmentEvent MessageRecipientView ConnectivityBaseViewModel LabelChipUiModel DaysAndHoursPickerView SingleLineLabelChipGroupView MultiLineLabelChipGroupView DaysHoursPair SingleLineCollapsedLabelGroupView ComposerBottomAppBar CheckableButton AccountSettingsRepository AccountSettingsActivityViewModel AddressCrypto CipherText Crypto MessageRepository EmbeddedImagesThread DefaultSharedPreferences ScreenshotManager ConversationDatabaseModelToConversationMapper CorrespondentApiModelToMessageRecipientMapper ConversationApiModelToConversationDatabaseModelMapper CorrespondentToMessageRecipientMapper MessageRecipientToCorrespondentMapper ConversationDatabaseModel MailboxItemUiModelMapper ErrorEnum PostResult ContactEmailGroupSelectionState ContactDetailsViewModelOld EditContactDetailsViewModel ContactDetailsRepository ContactLabelUiModel ContactGroupDetailsActivity AddressChooserViewModel ContactGroupsFragment ContactGroupsViewModel ContactGroupsRepository ContactsListMapper ErrorResponse ExtractInitials ComposeMessageRepository ComposeMessageViewModel GroupRecipientsDialogFragment GroupRecipientViewHolder GroupRecipientsViewModel GroupRecipientsAdapter SendMessageWorker SendMessage GetAddressIndexByAddressId SetMessagePasswordViewModel SetMessageExpirationActivity MessageRecipientArrayAdapter ComposeMessageKotlinActivity SetMessagePasswordActivity HtmlToSpanned SendPreferencesToMessageEncryptionUiModelMapper SetMessagePasswordUiModel ComposeMessageEventUiModel AddExpirationTimeToMessage MessagePasswordUiModel LabelRepository Label LabelType LabelId MessageMapperKt MessageDetailsActivity MessageBodyLoader MessageEncryptionUiModelMapper MessageEncryptionUiModel MessageDetailsHeaderIcons CollapsedMessageViews RenderDimensionsProvider ServerTimeInterceptor Event UserNotifier ResettableDelegateKt MailToData ResettableLazy StringResourceResolver INetworkConfiguratorCallback SetUpWebViewDarkModeHandlingIfSupported Resettable TextExtensions StringExtensionsKt CommonExtensionsKt ServerTimeProvider ResettableLazyManager ViewportTransformer DefaultTransformer BadImageUrlException ImageNotFoundException MailboxRecyclerViewAdapter NetworkConfigurator ParsedHeaders MessageResponse ServerMessage MessageEncryption RecipientType MessagePayload DatabaseProvider MessageSecurityOptions ApiException ThreadSchedulers ProtonRetrofit MessageDetailsViewModel MessageDetailsRepository MessageDetailsAdapter IntentExtrasData MessagePrinter RecipientContextMenuFactory StartCompose MessageBuilderData SaveMassageTask UserAction PendingActionDao PendingSend AccountManagerKt ProtonMailBaseJob CreateDraftWorker CreateDraftWorkerErrors UploadAttachmentsWorker DownloadEmbeddedAttachmentsWorker ImportAttachmentsWorker ContactsRepository ContactDao MessageDao ContactDatabase ContactEmail MessageSender Attachment LocalAttachment MessagesTypesConverter PmWebViewClient SenderInitialView MailboxItemView MessageDetailsRecipientsContainerView MessageDetailsHeaderView MessageDetailsExpirationInfoView VerifyConnection DeleteMessage IsAppInDarkMode SaveDraft SaveDraftResult GetDecryptedMessageById FetchPublicKeys FetchPublicKeysResult FetchPublicKeysRequest
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

correspondent-context-conversations

Conductance score: 0.2379058979456594

Logger AttachmentClearingService MessageRecipient MoveToFolderResponse IDList ComposeMessageActivity PostUnreadJob FetchMessageDetailJob PostReadJob AttachmentHeaders EventResponse SecureSharedPreferences MessageActionSheetViewModel LabelChipUiModel AccountSettingsActivity AttachmentStorageActivity AccountSettingsActivityViewModel MessageRepository NetworkConnectivityManager ConversationsRepositoryImpl MarkUnreadLatestNonDraftMessageInLocation ConversationDatabaseModelToConversationMapper CorrespondentApiModelToMessageRecipientMapper LabelContextDatabaseModelToLabelContextMapper ConversationApiModelToConversationDatabaseModelMapper CorrespondentToMessageRecipientMapper ConversationsResponseToConversationsMapper MessageRecipientToCorrespondentMapper CorrespondentToMessageSenderMapper ApiToDatabaseUnreadCounterMapper ConversationApiModelToConversationMapper LabelContextApiModelToLabelContextDatabaseModelMapper LabelContextApiModelToLabelContextMapper ConversationsResponseToConversationsDatabaseModelsMapper CorrespondentApiModelToMessageSenderMapper CorrespondentApiModelToCorrespondentMapper MessagesResponseToMessagesMapper DatabaseToDomainUnreadCounterMapper MessageSenderToCorrespondentMapper UnreadCounterDao ConversationDatabaseModel UnreadCounterEntity LabelContextDatabaseModel ConversationTypesConverter ConversationDao ConversationService CountsApiModel ConversationsActionResponses CorrespondentApiModel CountsResponse ConversationsResponse UndoTokenApiModel LabelContextApiModel ConversationIdsRequestBody ConversationApiModel ConversationsActionResponse ConversationApi DeleteConversationsRemoteWorker MarkConversationsReadRemoteWorker MarkConversationsUnreadRemoteWorker MoveMessageToLocationWorker ConversationApiSpec ChangeConversationsReadStatus ChangeConversationsStarredStatus ConversationsRepository HandleChangeToConversations MoveConversationsToFolder Conversation MessageDomainModel GetAllMessagesParameters GetConversationsResult GetAllConversationsParameters GetAllMessagesParametersKt Correspondent UnreadCounter LabelContext GetOneConversationParameters GetAllConversationsParametersKt ConversationsActionResult ObserveConversationsByLocation ObserveMessagesByLocation ObserveAllUnreadCounters MoveMessagesToFolder ObserveMessageCountByLocation MailboxViewModel MailboxItemUiModelMapper MessageData MailboxItemUiModel EditContactDetailsViewModel ContactDetailsViewModel ContactDetailsActivity AddressChooserRepository ComposeMessageRepository ComposeMessageViewModel SendMessageWorker SendMessage UpdateConversationsLabelsWorker LabelConversationsRemoteWorker UnlabelConversationsRemoteWorker LabelRepository Label LabelType LabelId UpdateConversationsLabels UpdateMessageLabels LabelsActionSheetViewModel LabelChipUiModelMapper NavigationActivity MessageMapperKt MessageFlagsToEncryptionMapper ConversationUiModelMapperKt ConversationResponse GetViewInDarkModeMessagePreference SetViewInDarkModeMessagePreference MarkMessageAsReadIfNeeded MessageDetailsActivity MessageBodyLoader ConversationUiModel FileHelper MessageBodyFileManager TextExtensions MessageBodyClearingService AttachmentListAdapter UserIdTag ParsedHeaders MessageSenderFactory IAttachmentFactory MessagesResponse MessageFactory MessageResponse ServerMessage MessageLocationResolver AttachmentFactory MessageEncryption DatabaseProvider MessagesService ContactEmailsManager MessageApi MessageApiSpec MessageService EventHandler FetchUpdatesJob SearchActivity MessageDetailsViewModel MessageDetailsRepository IntentExtrasData MessagePrinter MessageBuilderData PendingActionDatabase PendingSendRepositoryImpl PendingActionDao AccountStateManager PostUnstarJob PostStarJob ProtonMailBaseJob SearchMessagesJob DeleteContactWorker CreateContactWorker DeleteAttachmentWorker FetchContactsDataWorker CreateDraftWorker EmptyFolderRemoteWorker NoResultsEvent SearchResultEvent HandleSingleAttachment UploadAttachmentsWorker HandleEmbeddedImageAttachments ProtonStoreKt ProtonStore ContactsRepository ProtonStoreMapperKt ProtonMailConverters ContactDao MessageDao DatabaseFactory AttachmentMetadataDao CounterDatabase CounterDao CounterRepositoryImpl ContactDatabase AttachmentMetadataDatabase MessagePreferenceDao ContactEmail MessageSender AttachmentTypesConverter Attachment MessagePreferenceEntity AttachmentsMetadataTypeConverter MessagesTypesConverter UnreadLocationCounter MessageDatabase ProtonStoreMapper DataResultsKt MessageDetailsHeaderView ClearUserMessagesData EmptyFolder DeleteMessage ClearUserData SaveDraft ChangeMessagesStarredStatus GetDecryptedMessageById ChangeMessagesReadStatus CreateContact ConversationsEventResponse ProcessPushNotificationDataWorker NotificationServer NotificationServerKt
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

counter-job-post

Conductance score: 0.26460859977949286

ServerTime AttachmentClearingService MessageSendResponse MessageSendBody MoveToFolderResponse DeleteResponse MailSettingsResponse DisplayName ShowImages Signature IDList PostSpamJob PostUnreadJob ProtonMailEndlessJob PostArchiveJob ProtonMailCounterJob ResignContactJob PostInboxJob RemoveLabelJob PostDraftJob PostReadJob PostTrashJobV2 MoveToFolderJob MessageRepository ConversationService ConversationsActionResponses CountsResponse ConversationsResponse ConversationIdsRequestBody ConversationApi DeleteConversationsRemoteWorker MarkConversationsReadRemoteWorker MarkConversationsUnreadRemoteWorker MoveMessageToLocationWorker ConversationApiSpec GetAllMessagesParameters GetAllConversationsParameters GetOneConversationParameters ComposeMessageRepository SendMessageWorker LabelRepositoryImpl RemoveMessageLabelWorker ApplyMessageLabelWorker LabelConversationsRemoteWorker UnlabelConversationsRemoteWorker LabelRepository Label LabelType LabelId ConversationResponse MessageDetailsActivity ArchiveSwipeHandler StarSwipeHandler SpamSwipeHandler MarkReadSwipeHandler TrashSwipeHandler UserIdTag SecuredServices MessageDeleteRequest MessagesResponse MessageResponse MailSettings DatabaseProvider DraftBody MailSettingsApi MailSettingsService MailSettingsApiSpec ContactService ContactApi ContactApiSpec MessageApi MessageApiSpec MessageService MessageSendService DeviceService DeviceApi EventHandler EventManager EventService MessageDetailsRepository ConvertLocalContactsJob ReportPhishingJob PostUnstarJob PostStarJob ProtonMailBaseJob DeleteContactWorker DeleteMessageWorker CreateDraftWorker EmptyFolderRemoteWorker DatabaseFactory CounterRepository CounterDatabase CounterDao CounterRepositoryImpl TotalLabelCounter TotalLocationCounter Counter UnreadLocationCounter UnreadLabelCounter FetchMailSettings
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

contact-details-fetch

Conductance score: 0.3013392857142857

EditContactDetailsActivity MoveMessagesToFolder ContactDetailsRepository FetchContactDetails FetchContactGroups FetchContactsMapper FetchContactDetailsResult FetchContactGroupsResult ContactDetailsViewModel ContactDetailsAdapter ContactDetailsActivity ContactDetailsMapper ContactDetailsUiItem ContactDetailsViewState Label LabelId FileHelper TextExtensions IntentExtrasData StartCompose DeleteContactWorker ContactEmail FullContactDetails ListItemThumbnail
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

message-embedded-dark

Conductance score: 0.3314917127071823

AbstractEmbeddedImagesThread BigContentHolder KeyInformation Logger Transformer AbstractTransformer ServerTime PermissionHelper BuildConfig MessageRecipient SendPreferencesFactory AddAttachmentsActivity ComposeMessageActivity PostSpamJob FetchMessageDetailJob DownloadedAttachmentEvent DownloadEmbeddedImagesEvent Status AttachmentHeaders SendMetricsForViewInDarkModePreference ConnectivityBaseViewModel MessageActionSheetViewModel MessageActionSheet MessageActionSheetAction MessageActionSheetState ActionSheetTarget ActionSheetHeader LabelChipUiModel AccountSettingsRepository AddressCrypto MessageRepository EmbeddedImagesThread AttachmentsDirectory ConversationsRepositoryImpl ConversationDatabaseModel ConversationApiModel DeleteConversations ChangeConversationsReadStatus ChangeConversationsStarredStatus ConversationsRepository HandleChangeToConversations MoveConversationsToFolder Conversation MessageDomainModel GetAllConversationsParameters UnreadCounter ConversationsActionResult ObserveConversationsByLocation ObserveAllUnreadCounters MoveMessagesToFolder MailboxViewModel MailboxActivity ConversationModeEnabled ComposeMessageViewModel LabelRepository Label LabelType LabelId UpdateConversationsLabels UpdateMessageLabels LabelsActionSheetViewModel LabelsActionSheet NavigationViewModel ConversationUiModelMapperKt MessageBodyDecryptor MessageBodyParser MessageEmbeddedImagesWithContent EmbeddedImageWithOutputStream MessageBodyParts SignatureVerification EmbeddedImageWithContent MessageEmbeddedImagesWithOutputStream MessageEmbeddedImages MessageBodyDocument GetViewInDarkModeMessagePreference SetViewInDarkModeMessagePreference MarkMessageAsReadIfNeeded MessageDetailsActivity SwitchUserAndOpenMessageDetailsActivity LoadTheLastNonDraftMessageBody MessageBodyLoader MessageEncryptionUiModelMapper MessageToMessageDetailsListItemMapper MessageDetailsListItem MessageEncryptionUiModel MessageBodyState RenderedMessage ConversationUiModel DecryptionErrorBanner ScheduledInfoBanner MessageDetailsActionsView ExpandableRecyclerAdapter RenderDimensionsProvider TryWithExponentialBackoff Event MessageBodyCssProvider StringResourceResolver INetworkConfiguratorCallback SetUpWebViewDarkModeHandlingIfSupported TryWithRetry ViewExtensionsKt TextExtensions CollectionExtensions ViewportTransformer DefaultTransformer MessageBodyClearingService AttachmentClearingServiceHelper NetworkConfigurator ProtonHeaders MailSettings MessageEncryption DatabaseProvider MessageDetailsViewModel MessageDetailsRepository MessageRenderer MessageRendererKt MessageDetailsAdapter IntentExtrasData ImageDecoder MessagePrinter MessageBodyTouchListener MessageBodyScaleListener RecipientContextMenuFactory DefaultDocumentParser MessageDetailsAttachmentListAdapter DefaultImageDecoder DocumentParser StartCompose MailboxScreenViewInMemoryRepository ShouldStartRateAppFlow AccountStateManager ReportPhishingJob EmbeddedImage PostPhishingReportEvent AttachmentsRepository HandleSingleAttachment HandleEmbeddedImageAttachments AttachmentsHelper DownloadEmbeddedAttachmentsWorker ContactsRepository AttachmentMetadataDao ContactEmail MessageSender Attachment PmWebViewClient BottomActionsView MessageDetailsRecipientsContainerView ReplyActionsView MessageDetailsAttachmentsView MessageDetailsHeaderView MessageDetailsExpirationInfoView VerifyConnection EmptyFolder DeleteMessage IsAppInDarkMode ChangeMessagesStarredStatus ChangeMessagesReadStatus FetchVerificationKeys
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

fetch-report-message

Conductance score: 0.34235229155162894

RecipientDropDownClickListener MessageRecipient MessageSendResponse DeleteResponse ContactsDataResponse LatestEventResponse MailSettingsResponse SendPreferencesFactory Address IDList EventUpdaterService ComposeMessageActivity FetchMessageDetailJob GetSendPreferenceJob ResignContactJob FetchDraftDetailJob EventResponse SecureSharedPreferences AddressCrypto MessageRepository AppProcessLifecycleOwner DetailedException DetailedExceptionKt ConversationsRepositoryImpl ApiToDatabaseUnreadCounterMapper UnreadCounterDao UnreadCounterEntity ConversationService CountsApiModel ConversationApiModel ConversationsRepository HandleChangeToConversations GetAllMessagesParametersKt EditContactDetailsRepository ContactDetailsRepository ContactDetailsViewModel AddressChooserRepository ContactsViewModel ContactsListViewModel ComposeMessageRepository ComposeMessageViewModel SendMessageWorker LabelEventApiMapper LabelEntityDomainMapper LabelEntityApiMapper LabelEntity LabelEventModel LabelApiModel LabelService LabelRepository Label LabelType LabelId NavigationActivity MessageMapperKt MessageFlagsToEncryptionMapper ConversationResponse SignatureVerification MessageDetailsActivity MessageEncryptionUiModelMapper MessageEncryptionUiModel UserNotifier LiveDataExtensionsKt StringExtensionsKt UserIdTag SecuredServices ParsedHeaders MessageSenderFactory ServerAttachment IAttachmentFactory MessagesResponse MessageFactory MessageResponse ServerMessage MessageLocationResolver AttachmentFactory ServerMessageSender MailSettings MessageFlag MessageFlagKt MessageEncryption PostPhishingReportBody MessagePayload DatabaseProvider DraftBody ApiException NetworkSwitcher MessagesService OrganizationService MailSettingsService ContactService ContactApi ContactEmailsManager ContactApiSpec AttachmentService MessageApi MessageApiSpec MessageService KeyService ReportApi ReportService ReportApiSpec DeviceService EventHandler FetchEventsAndReschedule EventManager EventService FetchUpdatesJob SearchActivity MessageDetailsRepository MessageDetailsAdapter RecipientContextMenuFactory ExtractFullContactDetailsTask PendingActionDao PendingSend AccountManagerKt AccountStateManager ConvertLocalContactsJob ProtonMailBaseJob FetchMailSettingsWorker DeleteContactWorker FetchUserWorker FetchContactsDataWorker CreateDraftWorker CreateDraftWorkerErrors FetchUserAddressesWorker FetchContactsEmailsWorker SentryTree ContactsRepository ContactDao MessageDao ContactDatabase ContactEmail MessageSender Attachment FullContactDetailsFactory ContactData MessagesTypesConverter ServerFullContactDetails FullContactDetails MessageDatabase OfflineException ClearUserData SaveDraft FetchContactsData FetchVerificationKeys FetchMailSettings LaunchInitialDataFetch CreateContact ConversationsEventResponse ActionType
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

swipe-mailbox-feature

Conductance score: 0.34846625766871164

BigContentHolder NetworkResults AttachmentClearingService ISwipeHandler SwipeProcessor MessageRecipient MoveToFolderResponse DeleteResponse Address IDList AlarmReceiver AddAttachmentsActivity ComposeMessageActivity PostSpamJob PostUnreadJob FetchMessageDetailJob ProtonMailEndlessJob PostArchiveJob GetSendPreferenceJob ProtonMailCounterJob FetchDraftDetailJob PostInboxJob RemoveLabelJob PostDraftJob PostReadJob PostTrashJobV2 MoveToFolderJob MailboxNoMessagesEvent SettingsChangedEvent FetchDraftDetailEvent FetchLabelsEvent Status SecureSharedPreferences ConnectivityBaseViewModel MessageActionSheetViewModel MessageActionSheet ActionSheetTarget LabelChipUiModel SingleLineLabelChipGroupView SwipeChooserViewModel SwipeChooserActivity SwipeSettingFragment SwipeType MailSettingsEnumMapperKt UpdateSwipeActions GetMailSettings UpdateViewMode ObserveUserSettings SettingsEnum AccountSettingsActivity AccountSettingsActivityViewModel ProtonSideDrawer DrawerLabelItemUiModelMapper DrawerFoldersAndLabelsSectionUiModelMapper DrawerLabelUiModel DrawerItemUiModel DrawerFoldersAndLabelsSectionUiModel MessageRepository JobEntryPoint DefaultSharedPreferences NetworkConnectivityManager ConversationsRepositoryImpl DatabaseToDomainUnreadCounterMapper DeleteConversations ChangeConversationsReadStatus ChangeConversationsStarredStatus ConversationsRepository MoveConversationsToFolder Conversation GetMessagesResult GetAllMessagesParameters GetConversationsResult GetAllConversationsParameters UnreadCounter AllUnreadCounters ObserveConversationsByLocation ObserveMessagesByLocation ObserveAllUnreadCounters MoveMessagesToFolder ObserveConversationModeEnabled MailboxViewModel MailboxActivity UnreadChip EmptyMailboxView ConversationModeEnabled MailboxItemUiModelMapper EmptyMailboxUiModel MailboxListState UnreadChipState MailboxState UnreadChipUiModel MessageData MailboxItemUiModel ContactDetailsActivity ContactGroupDetailsActivity ContactGroupsFragment SetMembersForContactGroupJob ContactsListFragment ComposeMessageRepository ComposeMessageViewModel SendMessageWorker SendMessage LabelRepository Label LabelType LabelOrFolderWithChildren LabelId ObserveLabelsAndFoldersWithChildren ObserveLabels LabelsActionSheetViewModel LabelsActionSheet NavigationActivity MessageDetailsActivity SelectionModeEnum Event StringResourceResolver INetworkConfiguratorCallback ViewExtensionsKt TextExtensions CommonExtensionsKt ColorExtensionsKt MailboxRecyclerViewAdapter MailboxItemViewHolder ArchiveSwipeHandler SwipeAction StarSwipeHandler SpamSwipeHandler MarkReadSwipeHandler TrashSwipeHandler NetworkConfigurator ParsedHeaders MessageDeleteRequest MessagesResponse MessageResponse MessageEncryption DatabaseProvider SimpleMessage MessagesService ContactService ContactApi ContactEmailsManager ContactApiSpec MessageApi MessageApiSpec MessageService EventHandler FetchEventsAndReschedule FetchUpdatesJob SearchActivity MessageDetailsViewModel MessageDetailsRepository IntentExtrasData StartOnboarding StartCompose StartSearch MessageBuilderData SaveMassageTask PendingActionDatabase PendingActionDao PendingSend PendingUpload StartRateAppFlow MailboxScreenViewInMemoryRepository ShouldStartRateAppFlow AccountStateManager NotLoggedIn GetOrganizationJob PostUnstarJob FetchByLocationJob PostStarJob ProtonMailBaseJob SearchMessagesJob UpdateSettingsJob SettingsItemUiModel DeleteContactWorker DeleteMessageWorker CreateDraftWorker RefreshFeatureFlags FeatureFlagsManager FeatureFlagsInitializer MailFeatureFlags MailboxLoadedEvent NoResultsEvent SearchResultEvent SentryTree AttachmentsRepository AttachmentsViewState UploadAttachmentsWorker AttachmentsViewModel DownloadEmbeddedAttachmentsWorker ProtonStore MessageDao DatabaseFactory AttachmentMetadataDao MessageSender Attachment LocalAttachment OfflineException DataResultsKt MailboxItemFooterView SenderInitialView MailboxItemView BottomActionsView StorageLimitAlert VerifyConnection ClearUserMessagesData EmptyFolder DeleteMessage SaveDraft ChangeMessagesStarredStatus ChangeMessagesReadStatus LaunchInitialDataFetch DeleteMessageResult RegisterDeviceWorker MultiUserFcmTokenManager FirebaseToken ProcessPushNotificationDataWorker ClearNotificationsForUser
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

contact-local-create

Conductance score: 0.3685202639019793

EditContactDetailsActivity RecipientDropDownClickListener AttachmentClearingService DeleteResponse ContactEncryptedData ContactsDataResponse ContactResponse ContactEmailsResponseV2 SendPreferencesFactory CreateContact CreateContactBody IDList CreateContactV2BodyItem DatePickerFragment ProtonMailEndlessJob ResignContactJob ContactProgressEvent ContactEvent ContactAddressView ContactBirthdayClickListener VCardLinearLayout ContactOptionTypeClickListener UserCrypto CipherText Crypto NetworkConnectivityManager ContactsActivity ContactDetailsViewModelOld EditContactDetailsViewModel EditContactDetailsRepository ContactDetailsRepository FetchContactDetails FetchContactGroups ContactDetailsActivity ContactLabelUiModel UnsavedChangesDialog AndroidContactDetailsRepository AndroidContactDetailsCallbacks AndroidContactDetailsCallbacksFactory ContactsListFragment ContactsListViewModel ContactsListMapper IContactsListViewModel ContactItem LocalContactsConverter ContactIdGenerator LabelEntityDomainMapper LabelEntityApiMapper LabelEntity LabelsResponse LabelResponse LabelApiModel LabelRequestBody LabelRepository Label LabelId FileHelper Event INetworkConfiguratorCallback LiveDataExtensionsKt TextExtensions CommonExtensionsKt LabelContactsBody DatabaseProvider ContactService ContactApi ContactApiSpec EventHandler RecipientContextMenuFactory ConvertLocalContactsJob DeleteContactWorker CreateContactWorker ContactsRepository ProtonMailConverters ContactDao DatabaseFactory ContactDatabaseKt ContactDatabase ContactEmail FullContactDetailsFactory ContactData FullContactDetailsResponse FullContactDetailsConverter ServerFullContactDetails FullContactDetails LocalContactAddress LocalContact ListItemThumbnail VerifyConnection CreateContact
Classes of this module

currently found in :app module:

To extract this module you should break these dependencies:

Whole graph

Whole graph as a giant svg

message-embedded-dark;0.331 message-html-transformer;0.234 swipe-mailbox-feature;0.348 contact-local-create;0.369 contacts-contact-progress;0.158 attachment-full-contact;0.160 notification-push-receiver;0.107 correspondent-context-conversations;0.238 snooze-quick-dialog;0.027 retrofit-proton-ok;0.210 bridge-mapper-legacy;0.004 counter-job-post;0.265 fetch-report-message;0.342 label-labels-parent;0.083 theme-settings-prevent;0.036 device-navigation-account;0.126 sentry-network-proxy;0.086 settings-clickable-pin;0.056 pin-lock-start;0.039 ringtone-image-error;0.021 response-conversations-action;0.000 contact-details-fetch;0.301 organization-keys-api;0.000 onboarding-new-existing;0.021 1 10 4 13 1 18 13 4 14 26 22 2 21 6 4 14 9 10 31 10 1 4 2 1 4 9 2 30 1 5 14 4 7 24 18 1 5 5 4 11 2 2 3 15 18 1 1 5 22 4 1 5 4 13 1 17 1 7 1 5 2 2 3 6 1 9 11 7 2 9 7 8 6 1 3 1 3 1 1 1 4 3 2 1 3 25 2 14 5 16 6 17 9 3 2 1 1 1 5 2 5 1 7 8 3 1 1 15 6 17 6 26 3 1 15 2 1 7 1 18 20 9 5 5 5 2 2 1 8 3 1 4 9 2 9 1 4 2 1 1 2 3 2 4 1 1 2 3 4 2 3 3 2 3 1 1 3 5 1 1 1 4 3 5 2 1 2 2 1 2 generated with Lobzik.